

            const path = require('path');
            const staticImg = path.join(__dirname, 'static');

            function ArduinoUnoBlocks (Blockly) {
            
                        
                        
                        
                        
                        

                        Blockly.Blocks['EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290'] = {
                            init: function() {
                                this.jsonInit({
                                    "message0": Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290,
                                    "args0": [
                                        
                        {
                            "type": "field_dropdown",
                            "name":  "pin",
                            "options": [
                                 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_0,  '1'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_1,  '2'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_2,  '3'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_3,  '4'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_4,  '5'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_5,  '6'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_6,  '7'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_7,  '8'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_8,  '9'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_9,  '10'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_10,  '11'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_11,  '12'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_12,  '13'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_13,  '14'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_14,  '15'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_15,  '16'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_16,  '17'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_17,  '18'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_18,  '19'],

                            ]
                        },
                        
                                    ],
                                    "colour": "#179b73",
                                    "extensions":[ "output_boolean"]
                                });
                                }
                        };
                        
                        

                        Blockly.Blocks['EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203360'] = {
                            init: function() {
                                this.jsonInit({
                                    "message0": Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203360,
                                    "args0": [
                                        
                        {
                            "type": "field_dropdown",
                            "name":  "scl",
                            "options": [
                                 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_0,  '1'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_1,  '2'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_2,  '3'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_3,  '4'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_4,  '5'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_5,  '6'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_6,  '7'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_7,  '8'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_8,  '9'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_9,  '10'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_10,  '11'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_11,  '12'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_12,  '13'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_13,  '14'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_14,  '15'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_15,  '16'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_16,  '17'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_17,  '18'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_18,  '19'],

                            ]
                        },
                        
                        {
                            "type": "field_dropdown",
                            "name":  "sdo",
                            "options": [
                                 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_0,  '1'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_1,  '2'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_2,  '3'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_3,  '4'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_4,  '5'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_5,  '6'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_6,  '7'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_7,  '8'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_8,  '9'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_9,  '10'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_10,  '11'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_11,  '12'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_12,  '13'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_13,  '14'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_14,  '15'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_15,  '16'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_16,  '17'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_17,  '18'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203290_PIN_18,  '19'],

                            ]
                        },
                        
                                    ],
                                    "colour": "#179b73",
                                    "extensions": ["shape_statement"]
                                });
                                }
                        };
                        
                        

                        Blockly.Blocks['EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535'] = {
                            init: function() {
                                this.jsonInit({
                                    "message0": Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535,
                                    "args0": [
                                        
                        {
                            "type": "field_dropdown",
                            "name":  "key",
                            "options": [
                                 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_0,  '"A"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_1,  '"B"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_2,  '"C"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_3,  '"D"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_4,  '"*"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_5,  '"#"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_6,  '"1"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_7,  '"2"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_8,  '"3"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_9,  '"4"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_10,  '"5"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_11,  '"6"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_12,  '"7"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_13,  '"8"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_14,  '"9"'],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_KEY_15,  '"0"'],

                            ]
                        },
                        
                        {
                            "type": "field_dropdown",
                            "name":  "status",
                            "options": [
                                 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_STATUS_0,  '=='],
 [Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203535_STATUS_1,  '!='],

                            ]
                        },
                        
                                    ],
                                    "colour": "#179b73",
                                    "extensions":[ "output_boolean"]
                                });
                                }
                        };
                        
                        

                        Blockly.Blocks['EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203652'] = {
                            init: function() {
                                this.jsonInit({
                                    "message0": Blockly.Msg.EXT_4X4_MATRIX_KEYBOARD_BLOCK_1607426203652,
                                    "args0": [
                                        
                                    ],
                                    "colour": "#179b73",
                                    "extensions":["output_number"]
                                });
                                }
                        };
                        
            return Blockly;
            }

            module.exports = ArduinoUnoBlocks ;

        